home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d12 / asm_msc1.arc / EX61.ASM < prev    next >
Assembly Source File  |  1988-11-20  |  768b  |  25 lines

  1. TITLE  Random Number Between 0 and 51 (EX61.ASM)
  2.           PAGE      ,132
  3. OUR_CODE  SEGMENT   PARA 'CODE'
  4.       PUBLIC    RAND_51
  5. RAND_51   PROC      FAR
  6.           ASSUME    CS:OUR_CODE
  7.       PUSH        CX                  ;Save INT 1AH registers
  8.       PUSH        DX
  9.       PUSH        AX
  10.       STI
  11.       MOV        AH,0         ;Read the timer
  12.       INT        1AH
  13.           MOV        AX,DX         ;Move low count into AX
  14.       AND        AX,1FFFH         ; and strip off high 3 bits
  15.       MOV       DL,52         ;Divide low count by 52
  16.       DIV        DL
  17.       POP        DX             ;Restore AL
  18.       MOV        AL,DL
  19.       POP        DX             ;Restore DX and CX,
  20.       POP        CX
  21.       RET                 ; then exit
  22. RAND_51      ENDP
  23. OUR_CODE  ENDS
  24.          END       RAND_51
  25.